Supply second arg for tgetstr() calls.
authorEric S. Raymond <esr@snark.thyrsus.com>
Wed, 17 Mar 1993 13:11:50 +0000 (13:11 +0000)
committerEric S. Raymond <esr@snark.thyrsus.com>
Wed, 17 Mar 1993 13:11:50 +0000 (13:11 +0000)
src/term.c

index 0d414ab2f9b0a5679e5c10ec9a7b84f0c160370c..ecbca87c8b7784c6d127a5679cd759c30af28f4c 100644 (file)
@@ -1238,6 +1238,7 @@ term_get_fkeys (address)
      char **address;
 {
   extern char *tgetstr ();
+  char capval[32];
   int i;
 
   for (i = 0; i < (sizeof (keys)/sizeof (keys[0])); i++)
@@ -1287,7 +1288,7 @@ term_get_fkeys (address)
        else
          fcap[1] = 'a' + i - 11;
 
-       if (tgetstr(fcap))
+       if (tgetstr(fcap, &capval))
          {
            (void) sprintf(fkey, "f%d", i);         
            Fdefine_key (Vfunction_key_map,
@@ -1302,7 +1303,7 @@ term_get_fkeys (address)
    */
   {
 #define CONDITIONAL_REASSIGN(cap1, cap2, sym) \
-      if (!tgetstr(cap1) && tgetstr(cap2)) \
+      if (!tgetstr(cap1, &capval) && tgetstr(cap2, &capval)) \
            Fdefine_key (Vfunction_key_map, \
                         build_string (cap2), \
                         Fmake_vector (make_number (1), intern (sym)))
@@ -1313,6 +1314,7 @@ term_get_fkeys (address)
       CONDITIONAL_REASSIGN("%8", "kP", "previous");
       /* if there's no key_dc keycap, map key_ic to `insert' keysym */
       CONDITIONAL_REASSIGN("kD", "kI", "insert");
+#undef CONDITIONAL_REASSIGN
   }
 }